<HTML><HEAD><TITLE>erase_macro(+TransTerm)</TITLE>
</HEAD><BODY>[ <A HREF="index.html">Obsolete</A> | <A HREF="../../index.html">Reference Manual</A> | <A HREF="../../fullindex.html">Alphabetic Index</A> ]
<H1>erase_macro(+TransTerm)</H1>
Erases the macro definition for TransTerm done in the current module


<DL>
<DT><EM>TransTerm</EM></DT>
<DD>Term in the form Atom/Integer.
</DD>
</DL>
<H3>This built-in predicate is obsolete!</H3>
<H2>Description</H2>
   The macro (either global or local) defined for TransTerm in the current
   module is erased.  If there was no macro definition, an error is raised.

<P>

<H3>Modes and Determinism</H3><UL>
<LI>erase_macro(+) is det
</UL>
<H3>Modules</H3>
This predicate is sensitive to its module context (tool predicate, see @/2).
<H3>Exceptions</H3>
<DL>
<DT><EM>(4) instantiation fault </EM>
<DD>TransTerm is not instantiated.
<DT><EM>(5) type error </EM>
<DD>TransTerm not of form Atom/Integer.
<DT><EM>(162) no macro transformation defined in this module </EM>
<DD>No macro transformation defined in this module for    TransTerm.
</DL>
<H2>Examples</H2>
<PRE>
   Success:
   erase_macro(a/1).    (if a macro was defined for a/1)
   Error:
   erase_macro(X).      (Error 4).
   erase_macro(a).      (Error 5).
   erase_macro(a/1).    (Error 162). % if no macro was defined.



</PRE>
<H2>See Also</H2>
<A HREF="../../kernel/syntax/erase_macro-2.html">erase_macro / 2</A>, <A HREF="../../kernel/syntax/current_macro-4.html">current_macro / 4</A>, <A HREF="../../kernel/obsolete/define_macro-3.html">define_macro / 3</A>, <A HREF="../../kernel/control/phrase-2.html">phrase / 2</A>, <A HREF="../../kernel/control/phrase-3.html">phrase / 3</A>
</BODY></HTML>
